pcworld online logo

MASA▄ST▄ RESM▌N▌ DE╨▌▐T▌RMEK

Visual Basic ile masaⁿstⁿ resmini de≡i■tirmek τok kolayd²r. Sadece USER32.DLL dosyas²nda bulunan bir fonksiyonu τa≡²rmak yeterlidir. Yemedik, iτmedik sizin iτin bu API'yi kullanan bir program olu■turduk. ╓ncelikle FORMdan ayr² bir BAS modⁿlⁿne a■a≡²daki tek bir sat²r² girin.
Declare Function SystemParametersInfo Lib "user32" Alias
"SystemParametersInfoA" (ByVal uAction As Long, ByVal
uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni
As Long) As Long
Fonksiyonu program²n²za tan²tt²ktan sonra ■ekildeki gibi bir form olu■turun ve ilgili b÷lⁿmlere kodlar² yaz²n.
Private Sub Form_Load()
Dim Temp As String

Temp = InputBox("Lⁿtfen WINDOWS 
klas÷rⁿnⁿ girin", "", "C:\WINDOWS\")

If Temp = "" Then End   'Vazgeτ'e bas²ld²
If Right$(Temp, 1) <> "\" Then Temp = Temp + "\"
list1.Tag = Temp
Temp = Temp + "*.bmp"
Temp = Dir$(Temp)
Do While Temp$ <> ""
Temp = Dir$

'Dosya bulunamazsa d÷ngⁿden τ²k.
If Temp = "" Then Exit Do
list1.AddItem Temp
Loop
  
list1.AddItem "(Yok)"
Show
list1.SetFocus
list1.ListIndex = 0
End Sub

'Kⁿτⁿk aτ²klama: Formun yⁿklenme a■amas²nda 
'Setfocus olay²n² kullan²rsan²z VB hata verir.
 
Private Sub list1_DblClick()
Dim Temp As String
Dim BMPFile As String
Temp = Tag
If list1.Text = "(Yok)" Then
BMPFile = "(Yok)"
Else
BMPFile = Temp + (list1)
End If

SystemParametersInfo SPI_SETDESKWALLPAPER, 0, 
ByVal BMPFile, SPIF_UPDATEINIFILE

End Sub

'De≡i■tir tu■u
Private Sub Command1_Click()
list1_DblClick
End Sub
Program²n²z² τal²■t²rd²ktan sonra kar■²n²za BMP dosyalar²n²z²n yerini soran bir mesaj kutusu gelecektir. Mesaj kutusuna uygun bir dizin girdikten sonra art²k liste kutusundaki ilgili resme τift t²klayarak veya de≡i■tir tu■una basarak resmi masaⁿstⁿne yⁿkleyebilirsiniz. Program ayn² zamanda WIN.INI dosyas²n² da haberdar ediyor.